<?php
/**
 * 商品模型
 * @date    2020-01-01
 * @author  kiro
 * @email   294843009@qq.com
 * @version 1.0
 */
/**
rights Reserved, Designed By www.youyacao.com
@author:成都市一颗优雅草科技有限公司
@version 优雅草蜻蜓系统-服务端部分
注意：服务端代码在获得授权之前通过其他非官方渠道获得代码均为侵权，禁止用于商业用途，否则将承担因此带来等版权纠纷。
需要商业用途或者定制开发等可访问songshu.youyacao.com   联系QQ:2853810243 422108995 23625059584
优雅草开源代码地址：https://gitee.com/youyacao  可查阅所有开源项目



 */
namespace App\Models;

class Goods extends BaseModel
{
    protected $table = 'goods';

    protected $fillable = [
        'user_id',
        'type',
        'goods_name',
        'is_company',
        'company_short_name',
        'company_name',
        'company_person',
        'company_icon',
        'company_notice',
        'company_phone',
        'company_wechat',
        'company_tag',
        'company_intro',
        's_price',
        's_day',
        'amount',
        'pay_type',
        'pay_status',
        'start_date',
        'speak_user_id',
        'desc',
        'thumb',
        'price',
        'images',
        'content',
        'open_type',
        'out_url',
        'buy_num',
        'view_num',
        'sort',
        'status'
    ];

    public static $typeOptions = [
        1 => '实物商品',
        2 => '虚拟商品',
    ];

    public static function setStatus($id, $status = 1, $pay_type = '')
    {
        $data = [];
        $data['pay_status'] = $status;
        $data['pay_type']   = $pay_type;
        return self::where('id', $id)->update($data);
    }

    public static function getSpeakUser($user_id)
    {
        if (empty($user_id)) {
            return null;
        }
        return self::where('status', 2)
            ->where('speak_user_id', $user_id)
            ->select(
            'company_short_name',
            'company_name',
            'company_person',
            'company_icon',
            'company_notice',
            'company_phone',
            'company_wechat',
            'company_tag',
            'company_intro',
            's_price',
            's_day',
            'amount',
            'pay_type',
            'pay_status',
            'start_date',
            'speak_user_id'
        )->first();
    }
}
